package br.ufrj.dcc.tp.unitTest;

import java.util.ArrayList;
import java.util.List;
import br.ufrj.dcc.tp.cliente.gui.Options;
import br.ufrj.dcc.tp.unitTest.driver.AbstractTest;
import br.ufrj.dcc.tp.unitTest.driver.GUIDriver;
import br.ufrj.dcc.tp.unitTest.driver.MainTest;

public class Teste1 extends AbstractTest {
	
	//Número de clientes criados para testes
	private static final int NUM_CLIENTES = 3;
	
	public static void main(String[] args) {
		new Teste1().run();
	}
	
	protected boolean execute() {
		List<MainTest> clients = new ArrayList<MainTest>();
		List<Options> options = new ArrayList<Options>();
		
		for(int i=0 ; i<NUM_CLIENTES ; i++) {
			MainTest tmp = GUIDriver.getMainTest(br.ufrj.dcc.tp.cliente.Main.class);
			options.add( (Options) tmp.getComponent(br.ufrj.dcc.tp.cliente.gui.Options.class) );
			clients.add(tmp);
		}
		MainTest servidor = GUIDriver.getMainTest(br.ufrj.dcc.tp.servidor.Main.class);
		
		// Conecta todos os clientes
		for(int i=0 ; i<NUM_CLIENTES ; i++) {
			options.get(i).setNome("Cliente " + (i+1));
			options.get(i).getConfirm().doClick();
		}
		
		GUIDriver.stop(servidor);
		
		return true;
	}
}
